/**
 * 二级加载部分，用于实现更为复杂的初始化、内核加载的工作。
 * 
 */
#ifndef LOADER_H
#define LOADER_H

#include "comm/types.h"
#include "comm/boot_info.h"
#include "comm/cpu_instr.h"


// 保护模式入口函数，在start.asm中定义
void protect_mode_entry (void);

extern boot_info_t boot_info; //启动参数信息

typedef struct SMAP_ENTRY
{
    uint32_t baseL;
    uint32_t baseH;
    uint32_t lengthL;
    uint32_t lengthH;
    uint32_t type;
    uint32_t acpi;

} __attribute__((packed)) smap_entry_t;

#endif // LOADER_H